#ifndef __mid_crc_h__
#define __mid_crc_h__

#include "types.h"

uint8_t mid_crc_compute_crc8(const uint8_t *Data, uint8_t DataNum);

uint32_t mid_crc_compute_crc16(const uint8_t *Data, uint32_t DataNum);
int32_t mid_crc_compute_crc16_ext(const uint8_t *Data, uint32_t DataNum, uint32_t input_Crc, uint32_t continue_flg);


uint32_t mid_crc_compute_crc32(uint8_t *buf, uint32_t buf_len);
uint32_t mid_crc_compute_crc32_ext(uint32_t init_value, uint8_t *buf, uint32_t buf_len);



#endif

